package org.stvd.common.enums;

import java.util.LinkedHashMap;

/**
 * @Title: VerifyCodeTypeEnum
 * @Description: 验证码类型枚举类
 * @author houzx
 * @date 2020年10月10日
 */
public enum VerifyCodeTypeEnum {
    /** 注册验证码：00 */
    Regist("注册验证码", "00"),

    /** 绑定验证码：01 */
    Bind("绑定验证码", "01"),

    /** 密码重置验证码：02 */
    ResetPassword("密码重置验证码", "02"),

    /** 用户授权验证码：03 */
    Authorization("用户授权验证码", "03")
    ;

    // 成员变量
    private String text;
    private String value;

    // 构造方法
    private VerifyCodeTypeEnum(String text, String value) {
        this.text = text;
        this.value = value;
    }

    public String getText() {
        return text;
    }

    public String getValue() {
        return value;
    }

    public static String getName(String value) {
        for (VerifyCodeTypeEnum logType : VerifyCodeTypeEnum.values()) {
            if (logType.getValue() == value) {
                return logType.getText();
            }
        }
        return null;
    }

    public static LinkedHashMap<String, String> verifyCodeMap = new LinkedHashMap<String, String>();
    static {
        for (VerifyCodeTypeEnum verifyCode : VerifyCodeTypeEnum.values()) {
            verifyCodeMap.put(verifyCode.getValue(), verifyCode.getText());
        }
    }
}
